home *** CD-ROM | disk | FTP | other *** search
Text File | 1996-02-24 | 54.6 KB | 1,106 lines |
-
- What's new in DTA:
-
- Rel 2.2 (02/24/96)
-
- Changes:
- o DTA now supports Windows '95 filenames for input files,
- but not for output filenames. So you can try
- "dta longnameforinputfiles*.tga". Don't try
- "/olongnameforoutputfile.tga"... it'll get truncated to
- "/olongname.tga"
- If you supply a long filename on input and let DTA
- come up with its own output filename, like so:
- dta areallongfilename.tga /fb
- then DTA will use the short equivalent of the
- long filename when creating the output file. It will
- create something like "ARREAL~1.BMP" *not*
- "arreallongfilename.bmp"
- DTA recognizes spaces in Windows '95 filenames that you
- specify on the command-line only if you include quotes
- around the filename, like this:
- dta "dan's cool diffraction picture.tga" /fpng /odiffract
- If you do it like this:
- dta dan's cool diffraction picture.tga /fpng /odiffract
- then DTA will think you're specifying four different input
- filenames.
- Windows '95 filenames only work if you're running DTA
- from inside of Windows '95.
- o /X used to cause averaged frames to appear after the final
- frame, which wasn't always desirable. Now it doesn't unless
- you also specify /XL (which stands for loop expand).
- o The averaging technique DTA uses with /A, /T, and /X requires
- a lot of memory. I'm experimenting with a lower-memory technique
- that produces slightly less-accurate results. If you want to
- use it, specify the /FA switch. /FA stands for "fast average"
- because it's also a tiny bit quicker than the old technique.
- o /CA switch makes composition add colors instead of overlaying
- them for the current layer.
- o I've been working on some changes to IFF-reading recently
- to support IFF ANIMS ... as a result it doesn't work at
- all and right now and isn't recognized as a valid input
- format. Hopefully I'll be able to put it back at some point.
- o Fixed a bug in reading odd-sized BMP/DIB files.
- o Read and write PNG files. Warning: There are some features
- in the spec that aren't yet supported. 16-bit grayscale
- images are supported, but 48-bit color images are not.
- To create a PNG image, use the /fpng switch. You can make
- DTA produce output images in a specific color resolution
- using switches like /B and /G.
- o Added the /CS# switch, which makes DTA skip a specified
- number of colors when building a palette. If you use
- /CS20, then DTA will set the first 20 entries in the
- palette to zero and won't use them at all when mapping
- colors... so a player program could set those colors to
- anything it wants (the Windows default palette, for
- example) and it won't affect how the animation plays.
- This switch should NOT be used when using a preexisting
- palette with the /U switch. It will have no effect at all
- if you're not creating 8-bit output or if you're not
- remapping colors (/NM).
- o Appending to an existing flic.
- "DTA *.TGA /OFLIC.FLC /FLAP"
- So far I've tried this with 24-bit FLT and 8-bit FLC, not
- with other flic varieties.
- If you append to an 8-bit flic, DTA will remap pictures
- to the palette in the flic. Other palette options will
- probably not work.
- I expect problem if you try to append to a 320x200 FLC file...
- DTA will probably write FLI-type frames to the end, not
- FLC-type frames.
- o If you use an external palette with /U switch, DTA will
- keep the palette entries in their original order from now
- on.
- o Fixed a bug in reading Vivid/BOB IMG files.
- o Fixed a clipping bug.
- o Fixed a bug in flic-reading. DTA skipped "copy"
- (no compression) chunks instead of reading them in.
- o DTA can now read PPM 24-bit images, and write
- PGM grayscale images. I intend to expand this
- support, but so far these were all I've needed.
- o Removed all support for the Compuserve GIF format because
- of Unisys's new royalty scheme on their patented LZW compression
- algorithm. Sorry folks. Also removed support for "shrink" type
- compression in ZIP files. Unless Unisys changes its tune
- (which I don't expect), I will never release another
- version of DTA or any other program that supports LZW.
- It wouldn't cost me much to go along with Unisys, because
- DTA does not earn me very much money. My decision has more to
- do with (1) the extra bookkeeping that would be required,
- and (2) my general irritation at Unisys for sandbagging the
- shareware community with this patent nonsense.
- o Added very limited TIF input. DTA can read
- uncompressed, grayscale TIFs. I might add support
- for some other varieties in the future. I do not
- intend to add any LZW-compressed varieties because of the
- Unisys mess.
- o Changed how DTA handles grayscale images... if you're
- reading in a grayscale TGA or PNG file, it performs
- scaling, rotating, palette scanning, etc. with the grayscale
- image instead of converting it to truecolor first.
- This saves time and memory.
- There may be unexpected side-effects because of
- this change. Hopefully it won't affect colormapped,
- rgb, or rgba images or animations.
- o Added support for 16-bit grayscale. So far the only
- output formats that support 16-bit grayscale are
- PGM, TGA (both are nonstandard because the
- specs only allow up to 8-bit for grayscale images), and
- PNG.
- (You can specify 16-bit grayscale output with the
- two switches "/B16 /G".)
- TGA files can be type 3 or 11 (depending on compression),
- and have a pixel depth of 16.
- 16-bit PGM files can be identified by a "max" value of 65535.
- The pixel values for both are unsigned word values (ranging
- from 0 to 65535).
- Input formats that support 16-bit grayscale are BIL (an
- elevation format), DEM (another elevation format), 30S
- (guess what... another elevation format), and PNG.
- o Added support for alpha bit in 15-bit TGA files.
- o Added /B15 for 15-bit (32768-color) flic and TGA output. (This is
- the same as /B16 used to produce). /B16 will from now on produce
- real 16-bit (65536-color) flics. /B16 does not work with
- TGA files, because the TGA format does not support real 16-bit
- images... you must use /B15 instead.
- o Added support for 1-bit (black & white) flics, called FLBs.
- Use the /B1 switch to create them. DFV 1.1 or higher is
- required to play this type of flic. I recommend using ordered
- dither (/DO) with it unless you're starting with black & white
- images. I'm planning to add 1-bit PCX and BMP output too, but
- haven't done it yet.
- o Implemented Dan Richardson's "Field rendering" flic
- compression idea. The trick is to update only the odd-
- numbered lines in odd-numbered frames, and only even-
- numbered lines in even-numbered frames.
- Since it isn't exactly the same thing as TV-type fields
- I dubbed this option "even-odd compression". Select this
- option with the /EO command-line switch.
- o Implemented real TV-type field rendering via the /FLD switch.
- When this is in effect, DTA creates each output frame from
- two images. It uses the odd-numbered lines from the
- odd-numbered source frame and the even-numbered lines from the
- even-numbered source frame. If this ordering doesn't work
- the way you like, you can use the /FLDE switch instead
- to make DTA use the odd-numbered lines from the even-numbered
- source frame and even-numbered lines from the odd-numbered
- source frame.
- Note that this field-combining takes place after all
- other processing has taken place (layers, scaling, rotation,
- averaging, etc.)
- o Added /FADE transition switches. Just type
- /FADE# (where # is the number of frames) between the
- names of two files that you want to fade between.
- /FADE does a smooth fade between the pictures.
- o Added /BA switch which causes DTA, when building a
- flic, to compress frames with straight run-length
- encoding instead of delta compression whenever it
- would compress better. The result is sometimes a
- slightly smaller, but slower-playing flic.
- o DTA will shell to DJPEG.EXE (if it's in your DOS path)
- to read JPEG files. I wrote this code for v5 of DJPEG.
- If you're using v4 then it probably will not work right.
- o If you select /FJ and have CJPEG.EXE in your DOS path, then
- DTA will shell to it to create JPEG files. I wrote this
- code for v5 of DJPEG, and will not work right with v4.
- o DTA can now read .RAW files created in Stefan Eckart's
- DMPEG program.
- o TGA reading is now faster.
- o Dithering in 15/16-bit images is fixed (it was broken in
- rel. 2.1)
- o Sped up most disk I/O by using real-mode buffers.
- o Switched from octree color quantization to median cut
- quantization. The resulting color palettes usually look
- a bit better, and processing is quicker.
- Occasionally the octree method will produce a better
- palette, so it's still in DTA as an option. Just add "/RO" to
- the command-line.
- o When converting a bunch of pictures from one still image
- format to another (i.e., TGA to PCX), DTA would use the
- image resolution from the first image as the new resolution
- for all of output pictures. So if the first input picture
- was 320x200 and the second was 640x480, both output pictures
- would be created at 320x200. Fixed.
- o Reworked the help screen(s). There are now *so many*
- screens worth of help that I made it possible to exit
- to the command-line by hitting Esc instead of repeatedly
- hitting keys to get to the end.
- o Pixel tolerance (/TO, /TX, etc.) only worked when creating
- 24-bit animations. It now works with all flics, including
- 8-, 15-, and 16-bit.
- o Added support for convolution filters, which allow some
- additional image-processing capability like blurring,
- sharpening, etc. Just add /CNV[filter] to the
- command-line, where [filter] is the filename of a
- .CNV file. Several sample CNV files are included with
- DTA: BOX (which blurs images using a box filter), WBOX (a
- weighted blurring filter), GAUSS1 (a strong blurring filter),
- GAUSS2 (a really, really strong blur filter),
- SHARP1, and SHARP2.
- o The /U switch (which causes DTA to read in a .MAP and .COL
- file to use as a palette instead of creating an optimal
- palette) was broken. Fixed.
- o Added three switches for tiling. /TILEX#, which tells
- DTA how many pictures to tile horizontally, /TILEY#, which
- tells DTA how many pictures to tile vertically, and /TILE#,
- which specifies how many pictures to tile both horizontally
- and vertically.
- o DTA can now read 1- and 4-bit PCX files in addition to the
- 8- and 24-bit ones it could read before.
- o DTA can now read 1-bit BMP/DIB files in addition to
- the 8-, 24-, and 32-bit ones it could read before.
- o DTA now uses less memory when reading 24-bit images in
- FLT and TGA formats... instead of converting them to
- 32-bit internally before processing, they remain 24-bit,
- using only 3/4 as much memory as before.
- (If you're building a multi-layer composition or creating
- 32-bit output, they'll still be expanded to 32-bit.)
- o Other miscellaneous speed and memory optimizations.
-
- Rel 2.1 (04/23/94)
- o Fixed flic-reading code so it reads the bottom row of
- pixels properly.
- o Rewrote a lot of the internal picture-file handling code.
- All pictures are now read into memory buffers, and all
- operations are performed on the memory buffers in
- sequence. (Formerly, DTA read most pictures
- in a line at a time, and did all the operations on
- each line of pixels... it kept lots of picture files
- open simultaneously )
- The side effects of these changes are:
- (1) Basic operations use more memory.
- (2) Real complicated operations (averaging, compositing,
- etc.) use less memory.
- (3) Most everything works at least a little bit faster,
- and some operations are a lot faster.
- (4) There's no longer any limit on the number of pictures
- that you can average. (DTA used to fail if you
- tried averaging more than 10 or 12 pictures.)
- (5) I was able to reshuffle the order of operations.
- Now, the order is: chroma-key, averaging, clipping,
- scaling, post-scale clipping, rotation, compositing.
- (Now that I've gotten this far, I've realized that
- this still stinks... what's really needed is a
- user-defined order.)
- (6) Made it possible to add arbitrary rotations.
- (7) Processing a frame takes more steps, so the "percent
- finished" information isn't as useful as it used
- to be.
- o Had trouble reading some TGA files produced with
- RMORF 0.4 because of incorrect header information.
- DTA will now assume that a TGA file is 320x200 resolution
- if the image size fields are left blank.
- o Added built-in support for ZIP and LZH files, thanks to
- TurboPower Software's incredible programming toolkits.
- No more shelling to PKUNZIP or LHA required. As a result,
- extraction from archives is a lot faster, and there's no
- need to put up with LHA's weird screen access anymore.
- Unfortunately, because of this change I had to drop support
- for the ARJ archiver.
- o When building 8-bit flics, DTA used to always use the
- 320x200 resolution some another resolution was selected
- using the /R switch. The reason for that was that 320x200
- is the only supported resolution for the original Autodesk
- Animator .FLI format.
- From now on, it'll use the actual resolution from the
- first input picture file, like the now-obsolute /RA
- switch used to do.
- So unless your input pictures are already 320x200, you'll
- get .FLC files instead of .FLI files. You can make DTA
- create a .FLI file even with other resolution input by
- specifying /R1 or /R320,200.
- You'll also need to use /R if you want to create
- larger images for compositing...
- o When DTA makes a 320x200 flic, it always creates a .FLI
- file instead of a .FLC file. Unless you use the /FLC
- switch.
- o Reworked grayscale options... now there's /G, /G128, /G64,
- and /G32, /G16, /G8, and /G4.
- /G represents a 256-level grayscale except when the output
- format is a 320x200 .FLI file, when it represents a 64-level
- grayscale. That's because .FLI won't support higher than
- 64 shades.
- /G128 represents a 128-level grayscale, /G64 a 64-level
- grayscale, etc.
- The lower numbers will get you a lower-quality image, which
- will almost always compress better.
- Most VGA and SVGA monitors can only display 64 shades
- of gray, so it's wasteful to use more than that if your
- picture will only be displayed on a monitor.
- Some laptop VGA displays can only display 32 shades.
- If you're going to be printing your image or using it
- as a bump map or height field with a rendering program,
- then the more shades the better.
- o Renamed /CH (chroma-key) to /CK so that /CH would be free
- for a new option.
- o Got rid of /3D... I pulled it out to make some of the
- rewrite easier. You can now get a similar 3d effect
- using /CHR and /CHB (see below).
- o Added /BU, which makes DTA save .TGA files bottom-up
- (or upside-down, if you prefer) instead of top-down.
- ... some applications don't understand top-down .TGAs.
- o Added /IG, which maked DTA save .GIF files in interlaced
- format. It can also read interlaced .GIFs now.
- o When you create an 8-bit TGA file, DTA will now
- produce a colormapped TGA, not a greyscale TGA.
- If you want a greyscale TGA, use /G instead of /B8.
- DTA can now read colormapped TGA files, too.
- o Added /CH[R,G,B,A] which stand for CHannel insertion,
- which should let you create some truly weird effects
- if you're so inclined.
- (This is a pretty hard concept to explain, so bear with me...
- and remember that you don't have to use it, just like you
- don't have to use /L... DTA still understands simple
- command lines like "dta *.tga".)
- You can specify /CHR (red channel), /CHG (green channel),
- /CHB (blue channel), and /CHA (alpha channel) to cause
- a gray-scale version of an image file to be inserted
- into a specific channel of the current layer.
- You can use this to specify a matte for an image that
- doesn't contain an alpha channel, like this:
- dta background.tga /l pics*.tga /cha masks*.tga
- or to get a red/blue 3d effect (the kind that requires
- funny glasses):
- dta /chr left*.tga /ga0.8 /chb right*.tga
- (the /ga is to adjust the brightness of the red component
- so it doesn't drown out the blues. Some experimentation
- may be necessary to get the balance just right... if
- somebody comes up with an ideal brightness combination,
- let me know and I'll put it in the doc.)
- /CH works much like /L, except /CH is subordinate to /L.
- /CH merging (insertion) takes place after picture
- averaging, gamma correction, and chroma-keying, but before
- clipping, rotation, scaling, etc. /L merging (compositing)
- takes place after all of the above. So, you can have separate
- chroma-key, gamma, averaging settings for each /CH layer,
- but only one /ROT, /LOC, etc. setting in each /L layer
- regardless of how many /CH layers you've got. And some
- other switches, like /F, /O, /R, etc. can only be specified
- once per command line, no matter how many /L and /CH layers
- you've got.
- Note that if you specify "pics*.tga /cha masks*.tga",
- you're really specifying two /CH levels, not just one.
- The first, without a /CH parameter, contains pics*.tga,
- and there's no special processing of the color channels.
- The second gets converted to a grayscale and is inserted
- into the alpha channel.
- (Thanks to John Jordan for suggesting alpha insertion in
- the first place...)
- o When converting from one file format to another, DTA
- will usually use the original picture's filename, but
- with a new extension (unless you specify a different
- filename with /O).
- But, if you're creating an output picture from multiple
- input layers, or multiple input channels, or averaged
- images, or if input file and output file are in the same
- format, then DTA will invent new output filenames, like
- "OUT00000".
- You can now force DTA to use the original filename
- even in those situations if you use the new /FO (force
- original filename) switch.
- DTA might still not pick the right filename when you're
- using multiple layers, because it'll always use the first
- filename in the first channel group in the first layer.
- If, for example, you're overlaying a signature or log over a
- bunch of input pictures, like this:
- DTA PICS*.TGA /L SIGN.TGA /FG /FO
- it'll be okay because each .GIF file will use the filename
- from the first layer (PICS*.TGA).
- But if you're overlaying a bunch of pictures onto a single
- background, like this:
- DTA BACK.TGA /L PICS*.TGA /FG /FO
- it won't be okay, because each output picture will get saved
- as BACK.GIF. In that circumstance tell DTA to use the
- filenames from the second layer, like this:
- DTA BACK.TGA /L PICS*.TGA /FG /FO2
- You can also specify a specific channel group, like this:
- DTA /CHR X*.TGA /CHG Y*.TGA /CHB Z*.TGA /FG /FO1,2
- (the 1 means the first layer... you have to specify a
- layer when you're specifying a channel, even if there's
- only one. The 2 means the second channel group in the
- command, green in this case.)
- You can use /FO to force DTA to replace your original
- files after processing, like this:
- DTA *.GIF /ROT90 /FG /FO
- o Added read/write support for MindImage .RLE files.
- (These are the .RLE files used for the random dot
- stereogram program MindImage... DTA can NOT read any of
- the many other file formats that also use the extention
- .RLE)
- You read one of these files just like you would any other,
- by using the filename in the command line. For example,
- to convert a RLE to a GIF file, type:
- DTA HUMAN.RLE /FG
- To write a RLE, use the new /FR switch. Be warned that
- MindImage expects pictures' dimensions to be powers of two
- with a maximum of 512. So, DTA will always force pictures
- to have horizontal and vertical dimensions of 64, 128,
- 256, or 512. If a dimension is larger than 512, then
- it'll be chopped down to 512. Otherwise, unless a dimension
- is exactly equal to one of the allowed dimensions, it'll
- be increased to match. If the dimensions that are selected
- for you are different from the original dimensions, DTA
- will crop or extend the picture. For example, if you start
- with a 640x480 picture, DTA will chop off a little from the
- left and right to pare the 640 down to 512, and add enough
- black border to the top and bottom to extend the 480 to 512.
- Make DTA rescale the image to the new dimensions with the /SC
- switch. In the 640x480 example,
- DTA 640.GIF /FR /SC
- will cause the 640x480 image to be rescaled to exactly
- 512x512.
- DTA 640.GIF /FR /R128,128
- will result in a 128x128 image chopped from the middle of
- the starting image. The next two commands:
- DTA 640.GIF /FR /SC128,128
- DTA 640.GIF /FR /R128,128 /SC
- both result in a 128x128 image with the whole rescaled to
- fit exactly.
- o Added read-only support for IFF/ILBM files, 24-bit variety
- only. Files with extensions of .IFF and .LBM will be
- recognized.
- o Changed the default 16-bit flic format from .FLX to .FLH.
- .FLX is still supported to make life easier for users of
- Mathematica's Tempra Turbo Animator (the program that first
- supported that format). Just use the /FLX switch to tell
- DTA to use .FLX instead of .FLH.
- The basic (only?) difference between .FLX and .FLH is that
- they compress the first frame differently. .FLX uses a
- byte-oriented scheme which does not compress 16-bit pictures
- very well. .FLH uses a word-oriented scheme which works much
- better.
- (My DFV flic player can read either. Tempra Turbo Animator
- will not be able to read the .FLH files.)
- o Added support for .FLT (24-bit) flics. Just use the /B24
- switch to tell it to build a .FLT in stead of .FLC.
- At the moment, my DFV player is the only player that can
- can view this variation of the flic format... if anybody out
- there wants some info on the modifications I made to the flic
- format to support 24-bit, let me know. They're not too
- complicated, and they're not a secret.
- o Because 24-bit flics can get so *huge*, I added some tricks
- for minimizing the size. First, the /TO (flic tolerance)
- switch, which causes DTA to ignore pixel differences between
- frames when the distance in color-space is less than or
- equal to a value that you supply.
- I know that explanation leaves something to be desired
- ... to understand what's going on, try it out by adding
- "/TO15" at the end of a command line. The result will
- usually be a smaller flic that plays more quickly and
- doesn't look quite as good.
- This trick works better with digitized video than it does
- with rendered animation.
- Sometimes this gimmick produces a side effect of faint
- trails on the screen when you animate anti-aliased images.
- Try the /TX switch (which isn't really an acronym of anything)
- with a number, for example "/TX5". In that case, one frame
- in every 5 will be a full difference frame with no
- tolerance, and the trails will disappear.
- /TO and /TX work only with 24-bit flics. I'll probably
- add it later for 8-bit and 16-bit flics.
- o Added /INV which inverts either whole colors or individual
- color channels. You can do /INVR, /INVG, /INVB, /INVA,
- or combinations of them. Specifying just "/INV" is the same
- as specifying "/INVR /INVG /INVB".
- If you use any /INV option with /NM (no remapping of
- mapped files) then color indexes will be inverted
- instead of color components.
- o Added /RED, /GREEN, /BLUE, and /ALPHA switches which
- let you extract a particular channel from an image.
- So, you can:
- DTA PICTURE /RED
- to create a grayscale image from just the red component, or:
- DTA X*.TGA /CHR X*.TGA /BLUE /CHB Y*.TGA /RED
- to first load in each picture as a regular 32-bit image,
- then replace the red channel with the original blue channel
- and then replace the blue channel with the red channel from
- a completely different set of pictures.
- This is fairly useless most of the time, but it should
- make some really wild effect possible.
- o Added /SCF (fast scaling). Use it like /SC. It works
- a *lot* faster than /SC, but looks really bad, because
- it doesn't use any interpolation.
- o Added /CLP (post-scale clipping) which works just like /CL
- but it clips the picture after scaling takes place.
- If you type:
- dta x.tga /sc500,500 /cl120,120,100,100 /pcl140,140,150,150
- DTA will read in the picture and clip out a 100x100 window
- from the picture (at coordinates 120,120), then rescale
- the clipped window to 500x500, and then clip out a 150x150
- window from the scaled picture (at coordinates 140,140).
- o Fixed a bug: DTA would ignore /332 and /G palette options
- if you were outputting to a GIF file.
- o Got rid of /ST (start) parameter, replaced it with
- /LOC. Syntax is now /LOC#,#,# (default=0,0,0).
- The first two numbers are the x,y coords on the screen
- (from the center) where the center of the image should
- go.... Unless you specify /LL (which tells DTA to base the
- location on the left edge of the screen and image), /LR
- (right edge), /LT (top edge), or /LB (bottom edge).
- The third number is a time variable, specified as a
- percentage.
- If you specify /LOC0,0,0 that means put the image at
- 0,0 at the beginning of the animation. Add /LOC25,25,50
- and the image will be put at coords 25,25 at exactly halfway
- through the animation. If you don't specify a #,#,100,
- then DTA will assume you want the final location to loop
- back to the starting point. You can enter as many or
- few /LOC parameters per layer as you want...
- DTA will use an interpolating spline to figure out the
- actual locations per frame.
- Unlike the old /ST, pictures can be placed at non-integer
- locations. If you do, your picture will be resampled.
- o Added arbitrary rotation. So you can specify /rot45
- (or /rot110.25 for that matter).
- You can add time values after multiple /ROT switches
- just like you can after /LOC.
- To get a full rotation, you could do "/ROT0,0 /ROT360,100".
- If rot[100%]-rot[0] is a multiple of 360, then the final
- rotation value will not be used ... this helps produce
- a smooth loop.
- Rotation uses smooth resampling.
- o Input pictures that are larger than the output picture
- are now centered... instead of only the top corner
- showing, the center will show.
- o Added read-only support for Type-1 TGA files (8-bit,
- colormapped).
- o Added /CC (chroma-key color), which allows you to specify
- what color DTA should replace matching pixels with. The
- default is still 0,0,0,0 (black, fully transparent).
- o Averaging and scaling now handle 32-bit pixels correctly
- ... previously they didn't take the alpha byte into
- account properly. As a result, colors (in areas where
- alpha-blending was taking place) would sometimes come
- out too dark or too light.
- As a result, these two functions are slower than they
- used to be... but I think the other speedups will cancel
- it out.
- o Made DTA write 8- and 24-bit PCX files (it did a couple years
- ago, but only 8-bit and then I pulled it out to save
- room. Now that DTA's protected mode, there's no reason
- not to support this output format).
- o Made DTA read and write Vistapro .VAN animation files.
- o DTA can now write as well as read BMP files, with
- /FB switch. /FD switch creates the same type of file,
- but uses the .DIB extension instead of .BMP
- By default, it creates 24-bit BMPs, but you can
- make it create 8-bit BMPs by adding the /B8 switch.
- o Fixed a bug in flic-reading... if a flic contained
- a partial palette (fairly rare), DTA would get confused
- and crash.
-
- Rel 2.0.8 (10/22/93)
- o Added 90 degree increment rotation... use "/ROT90", "/ROT180",
- "/ROT-90", "/ROT270" etc.
- Note: this is the order that operations get done...
- First rotation, next scaling, next clipping.
- So if you did "/cl100,100 /sc200,200 /rot90"
- then DTA will first rotate the picture 90 degrees to the
- right, then scale it to 200x200, and then clip off the
- top half and left half of the scaled, rotated image.
- o Expanded /R switch... in addition to preset resolution
- numbers like "/R6", you could also set the resolution
- explicitly like "/R640,480". Just be careful that, if you're
- creating a .FLC file *don't* pick an odd number for the
- horizontal dimension: "/R149,200" is a no-no.
- (That's not a limitation of the .FLC format, just of
- my implementation.)
- o Reworked the way scripts work (you know, like "@pics.scr").
- Scripts can now include regular command-line switches
- in addition to filenames. Just make sure that you've got
- a new file name or switch on each line of the script file.
- You can even include the name of a new script file...
- Just try to avoid recursive script files...
- *Don't* put "@script1.scr" inside of SCRIPT1.SCR, and
- *don't* put "@script1.scr" inside of SCRIPT2.SCR if SCRIPT2.SCR
- is called by SCRIPT1.SCR.
- Or DTA will go into an infinite loop and hang up.
- o If you don't include an extension with an @filename, DTA
- will add '.SCR' to the filename.
- o Fixed some clipping bugs.
- o DTA would sometimes crash with an out-of-heap-memory
- runtime error when flipping a large upside-down TGA file.
- Fixed.
-
- Rel 2.0.7 (09/30/93)
- o Scaling didn't work right when DTA was reading from a
- flic (probably also when reading an upside-down
- TGA and creating a GIF or TGA).
- Fixed.
-
- Rel 2.0.6 (09/27/93)
- o Fixed some more bugs in compositing and chroma-key.
-
- Rel 2.0.5 (09/12/93)
- o Finally got rid of the protection fault that invariably
- occurred after DTA finished building a .FLX file.
-
- Rel 2.0.4 (09/01/93)
- o Discovered a strange 'feature' in TGA files produced by
- a program called Imagine. Even though they are unmapped
- 24-bit images, for some reason they contain a color map.
- Because DTA doesn't support colormapped TGA files, I
- never paid any attention to color-map info... so DTA
- just would ungraciously treat the color-map in such files
- as if it were part of the image.
- DTA still doesn't read colormapped TGA files, but now if
- there's a color-map in an unmapped picture, it'll at
- least bypass it correctly.
-
- Rel 2.0.3 (08/25/93)
- o Added inverse chroma-key (/CI). Works the same as chroma-key
- but backwards... only matching colors *won't* be made
- transparent.
- o Couldn't read .FLC files created with Autodesk Animator...
- it got confused when it ran into the optional "prefix" and
- "postage stamp" chunks. Fixed.
- o Had problems reading 16-bit TGA files... sometimes
- resulting in page faults, sometimes in bad output.
- Fixed.
- o (There still seems to be a problem with .FLC files
- created with DTA... some players choke on some flics.
- And there's still that irritating page fault after it
- finishes building a .FLX file... I'm working on 'em.)
-
- Rel 2.0.2 (08/11/93)
- o Multiple layers didn't work right with /NM (no remapping)...
- only the bottom layer would show up in the final picture.
- Now it works, including chroma-key.
- Note: remember, all pictures in all layers must be colormapped,
- and must share the same palette for /NM to work right.
-
- Rel 2.0.1 (08/04/93)
- o Fixed a bug in /CL (clipping).
- o Fixed a bug in /CH (chroma-key).
-
- Rel 2.0 (07/29/93)
- o DTA can now read FLIC files.
- o DTA can now read DIB/BMP files.
- o DTA can now read Presidio .ANI files.
- o DTA can read and write hicolor Tempra ".FLX" files.
- Just specify /B16 (for 16-bit) on the command line to
- build an FLX instead of an FLI or FLC.
- (This feature seems to work well enough, but there are
- still some bugs.
- For some reason I haven't figured out yet, DTA crashes
- with a General Protection fault whenever it builds a FLX file.
- This only happens after it's finished building the animation.)
- o Now including the FLISPEED program with the DTA package.
- This'll change the speed value in the header of a flic
- without requiring you to rebuild the animation.
- Just type:
- flispeed xxx.fli /s5
- to change xxx.fli to a speed value of 5.
- o Added multi-layer (use /L to separate layers) compositing.
- Like this: DTA BACKGRND.TGA /L FORE*.TGA
- If FORE*.TGA are 32-bit TGAs with alpha, then
- DTA will make use of the transparency info.
- o Added chroma-key (use /CHr,g,b to specify a transparent
- color) ... this works okay, but not nearly as good as
- starting with 32-bit TGA files containing transparency
- info (which you can create in Polyray and, I'm told,
- 3D Studio).
- You can use this feature to create 32-bit TGA files that
- contain alpha information like this: DTA *.TGA /OT /B32 /CH255,0,0
- (DMorf fans: DMorf will morph the alpha info along with the
- color info... but DMorf can add alpha better than DTA can.)
- Or, DTA BACKGRND.GIF /L FORE*.GIF /CH0,0,0 to composite a
- over a background... DTA will make all black pixels transparent.
- /CT specifies a tolerance for chroma-key. If you (for example
- specify "/CH0,255,0 /CT5" then all pictures in the range
- <0,250,0> and <5,255,5> will become transparent.
- o Added /REP# which repeats a single frame a specified number
- of times. Useful for inserting pauses in your flics.
- For example, if you type
- DTA before.tga /rep10 morf*.tga after.tga /rep10
- before.tga and after.tga each get repeated ten times.
- Note that this'll only create a pause if you have a speed
- value greater than 0.
- o Added /STx,y (start) ... instead of centering a picture
- on the screen, you can tell DTA where to place the top-left
- hand corner of an image on the screen. You can have a separate
- start value for each layer.
- o Added /CLx1,y1,x2,y2 (clip)
- X1 and Y1 specify the top-left corner of the clipping window,
- and X2 and Y2 specify the size of the clipping window.
- Clipping takes place AFTER scaling, if you use both.
- You can have a separate clip for each layer.
- o Got rid of /SX (scale X) and /SY (scale Y)... just use /SCx,y
- for scaling.
- You can have a separate scale value for each layer.
- o No more real-mode executable. DTA is just getting too darn
- big. Maybe I'll build a pared-down DTALITE or something
- later on, if there's any demand.
- o Fiddled with the status display some.
- o Skipped 1.9... I think the amount of change justifies going
- all the way to a new major release number. Alexander
- Enzmann requested flic-reading way back even before I
- released 1.0 and here it is, finally.
- o Probably some other stuff I've forgotten about.
- o Fixed a bunch of bugs (and probably added some new ones
- while putting in new features).
-
- Rel 1.8g (01/18/93)
- o Added comments to @files... just prefix comments with a ";".
- o DTA now ignores blank lines in @files.
- o Fixed assorted bugs.
- o Added grayscale TIF output (/FI)
- o Added /I option, which works like /K (skip), except instead
- of specifying how many frames to skip, specify the total
- number of frames you want in your flic. So if you have
- 50 files... X000.TGA, X001.TGA, on up to X049.TGA, and
- you type:
- dta x*.tga /i10
- then DTA will create a 10-frame flic from X000, X004, X009,
- etc.
-
- Rel 1.8f (12/30/92)
- o Fixed some more bugs.
- o Added support for 8-bit grayscale TGA files (type 3).
- (To create one, use /B8 /FT).
- o Added picture rescaling. The /SC option, which only works
- when you're creating flics, rescales an image so it's the same
- size as the screen resolution.
- The /SW option rescales an image so it's the same width as the
- screen resolution (or, if you enter a number, like /SW100,
- to the width that you specify... if you use /SW for an output
- format other than a flic, then a specified width is required)
- The /SD option rescales an image so it's the same depth as the
- screen resolution (or, if you enter a number, like /SD100,
- to the depth that you specify... if you use /SD with an output
- format other than a flic, then a specified width is required)
-
- Rel 1.8e (12/17/92)
- o For some reason the /NM option didn't work anymore. Fixed.
- o Fixed a bug in FLC compression... it caused the wrong pixels
- to be updated when there was a change in a pixel row after a
- run of more than 254 unchanged pixels.
- o Fixed a bug that caused a page-fault (runtime error 216)
- when creating GIF or TGA files in the protected mode
- version.
- o There used to be a limit on the width of pictures that DTA
- could process... if you made it read a picture wider than
- 1280 pixels, you'd either get a spectacular crash requiring
- a reboot (real mode) or an error message (protected mode).
- Now it should be able to process pictures with a width up
- to 16K pixels or so without crashing.
-
- Rel 1.8d (11/30/92)
- o Fixed one bug, which prevented DTA from creating 1-frame
- flics correctly.
- o Including two versions of DTA... DTA.EXE (real mode) and
- DTAX.EXE (protected mode). The memory management stuff
- that I included in 1.8b and 1.8c is now separated into
- another archive, DTAMEM.ZIP.
- The real-mode version runs faster than the protected-mode
- version, but only gives you access to 640K of memory.
-
- Rel 1.8c (11/27/92)
- o Whoops, introduced some new bugs in 1.8b. Got ZIP, LZH, and
- ARJ working fine, but it wouldn't read pictures outside of
- archives anymore.
-
- Rel 1.8b (11/27/92)
- o Fixed a bug that caused a runtime error 204 whenever a frame
- couldn't be compressed and had to be stored raw.
- o Flics of resolutions other than 320x200 are now saved with the
- extension 'FLC' instead of 'FLI'... to be consistent with
- conventions established by Autodesk's Animator Pro.
- o This is the first version of DTA to be compiled in 286 protected
- mode. This means that DTA can access up to 16MB of extended
- memory without all that messy EMS/XMS/virtual memory management.
- It also means DTA doesn't recognize EMS or page to disk any more.
- If you require EMS or virtual memory, stick with the original
- version 1.8.
- Two extra files (DPMI16BI.OVL and RTM.EXE) are distributed
- along with DTA to support protected mode. You must keep these
- files either in the same directory as DTA, or in the DOS path.
- When DTA is run from inside a Microsoft Windows enhanced-mode
- DOS window, it'll use Windows' DPMI services instead of the
- Borland DPMI server.
- o MAYBE fixed a bug in FLC compression.
- o DTA can read pictures stored in ZIP and ARJ archives as well
- as the previously supported LZH archives ... IF you've got the
- appropriate de-archiver (PKUNZIP.EXE, ARJ.EXE, LHA.EXE) in your
- DOS path.
-
- Rel 1.8 (11/08/92)
- o DTA couldn't locate PCX, IMG, or GIF files in LZH archives... fixed.
- o DTA can now read 24-bit PCX files (as well as the previously
- supported 8-bit type).
- o Added some additional error-checking so DTA will stop with an error
- message if it runs out of disk space while creating output files.
- Previously it just kept on trying to write to a full disk.
- o In a previous version, made some changes in the GIF-writing
- code to speed it up and use less memory. As a result, upside-
- down TGAs weren't getting flipped rightside-up like they're
- supposed to... fixed.
- o Removed some useless experimental options: /L, /E, /O
- If anybody ever actually found a use for any of these, let me know
- and I'll put 'em back.
- o Removed /W, since it was only added as a workaround to a bug that's
- now finally fixed.
- o Added GIF89a input. (extension blocks are IGNORED)
- o Fiddled with output-file parameters. You now specify the output
- filename with /O, and the format with /F instead of specifying
- both with /F
- o Added /H, which lets you adjust brightness. /HA50 increases the
- values of red, green, and blue by 50%. /HR200 /HG-25 increases the
- value of red by 200%, and decreases green by 25%.
- o Added /C, which lets you skip frames when scanning for a palette.
- If you use /C5, then DTA will only scan 1 picture for every 5
- in your animation.
- o Added /K, which lets you skip input files when generating a
- flic. If you use /K3, DTA will ignore 2 frames out of every 3.
- If you use both /K2 and /C2, then DTA will skip every other
- picture, and create a palette out using only 1 of every 4
- pictures.
- o Fiddled with the time blurb so it writes in minutes and seconds
- instead of milliseconds.
-
- Rel 1.7g (08/27/92)
- o Fixed a rarely-encountered bug in 320x200 FLI compression.
- o Reworked the documentation (actually, Dan Farmer did most all of
- this task).
-
- Rel 1.7f (07/19/92)
- o Fixed some weird bugs in selecting output filenames for GIF files.
- o Added /PO option, which causes DTA to create a single optimal
- palette even when it's creating GIF files.
-
- Rel 1.7e (07/02/92)
- o Removed all the logging code, since the memory allocation
- problems seem to be licked.
- o First attempt at creating hi-color and true-color FLIs.
- (To create a hi-color FLI, use the /b16 parameter. The
- resulting file with have an extension of FLH. To create
- a true-color FLI, use /b24. The resulting file will have
- an extension of FLT.)
- So far there's no player that will display these new files,
- but Steve Enns is working on one.
- o The color-mapping speedups in the previous version resulted
- in bad color choices in some cases. Added an extra
- step between palette selection and color-mapping that
- should improve it.
- o Added /RA parameter (auto-resolution)... tells DTA to use
- the size of the first picture to decide how big to make
- an FLI. Note: use this parameter only with pictures with
- even horizontal dimensions.
- o When DTA used XMS to store pictures, it wasn't always clearing
- the picture buffer when it was supposed to... resulting in
- some background garbage when animating pictures smaller than
- the FLI.
- o Added /DR (random dither) parameter. Adds/or subtracts a
- random value from each pixel. Random values are the same
- across frames, so FLIs shouldn't explode in size like they
- sometimes do with error-diffusion dithers like Floyd-Steinberg
- and Sierra Lite.
- Specify the range of the random number by appending a number
- to the /DR parameter, like this:
- dta *.tga /dr4
- That will result in random numbers ranging from -4 to 4.
- Note: I stole the idea from Stephen Coy's IMG2GIF program.
- o Got rid of /M parameter, which affected the order of
- color-tree pruning. It was a failed experiments in
- improving color-selection.
- o Changed /MI (max internal colors) parameter to /M
- o Changed RLE TGA output so that line boundaries aren't
- crossed within a packet... (to avoid a VPIC bug)
-
- Rel 1.7d (04/25/92)
- o Fixed some more memory allocation problems.
- o Speeded up color-mapping. When dithering, there should
- be a big speed increase. When not dithering there should
- be a lesser increase.
- o Added Sierra Lite dithering (/DS parameter). SL dither
- another error-diffusion-type dither, somewhat quicker
- than Floyd-Steinberg.
-
- Rel 1.7c (04/15/92)
- o Fixed a bug in grayscale output.
- o Reduced the amount of memory required for the color tree.
- o Fixed some other memory-related problems.
- o Got rid of V (verbose), and added /LOG (which causes
- assorted memory allocation info and other boring
- debugging-type data to be written to a file called "DTA.LOG".
- o Added /MI parameter (which means "maximum internal colors").
- The octree color routine allows only 256 colors to exist
- in the tree at any time. Whenever the number of colors
- exceeds 256, parts of the tree get truncated.
- With /MI, you can change that maximum number of colors
- to something other than 256.
- If you change it to a number larger than 256, then the palette
- will not be reduced to 256 colors until DTA is done scanning
- pictures.
- This can result in a nicer palette, but it uses more
- memory. I've had some nice results using "/mi2048".
-
- Rel 1.7b (04/01/92)
- o Rel. 1.7 was missing a last-minute .FLI bug fix and
- a document update or two.
-
- Rel 1.7 (03/31/92)
- o Reads 256-color PCX files.
- o Reads and writes 16, 24, and 32-bit TGA files, compressed
- or uncompressed.
- The default is compressed TGA-24. /B16 selects 16-bit,
- /B32 selects 32-bit. /NC selects no rle compression.
- Dithering works for TGA-16 files... But if you use ordered
- dithering, DTA ignores any 'strength' value and uses a
- default (because TGA-16 color reduction is regular).
- o When scanning for a palette, it's a lot faster than before
- when reading 256-color pictures.
- o Fixed EMS bugs. Added support for XMS.
- o Added /332 (3/3/2 palette) option
- (If you use ordered dithering, DTA ignores any supplies
- 'strength' value and uses a default).
- o Added /NM (no-remapping) option. When reading 8-bit
- colormapped files, this tells DTA to use the original
- palette that's included in the file instead of creating
- a new palette from the colors in the picture, and to skip
- re-mapping the picture to the palette.
- If you're creating an .FLI from a bunch of .GIFs or .PCXs,
- then DTA will use the palette from the first input file,
- and it will assume that all of the pictures use the same
- palette. This will result in slightly better-looking output,
- and DTA will generate the .FLI *MUCH* faster.
- If these files do not use the same palette, then do not
- use this option.
- /NM does not work with any sort of dithering, frame-averaging,
- or anything else that requires fiddling with colors.
- If you're converting .PCX to .GIF, then the single palette
- restriction does not apply...
-
- Rel 1.6 (01/25/92)
- o Can write uncompressed Targa-16 files (use the /B16 switch).
- o Can read compressed and uncompressed Targa-16 files (like
- those you can produce with POLYRAY).
- o Added /M option, which causes the palette tree-reduction
- routine to prune the most popular branches instead of
- least popular. The resulting palette should be biased
- a bit more toward detail in a picture instead of smoothly
- shaded areas.
- o Added /L option, which allows you to set the initial
- (pre-reduction, that is) color resolution for one or
- more of the color components (r,g,b) to something other
- than the default 6 bits. It doesn't make sense to set
- it higher than 6 bits, since that's the most VGA can display.
- But you could, for example, tell DTA to use fewer bits for
- green and blue so that the reds get more representation,
- like so:
- dta *.tga /lb2 /lg3
- (that sets the blue resolution to 2 bits and the green
- resolution to 3 bits).
- o When averaging pictures, DTA used to use an equal percentage
- of each of the original pictures. That's still the default,
- but with the /E option, you can change this. /E lets you
- specify two numbers: (a) the amount of weight to give the
- first picture, and (b) how much to increment that weight
- for each successive picture. So, assuming you start with
- three TGA files, if you use this command:
- dta *.tga /a5 /e2;1 /fg
- the first frame will get a weight of 2, the second will get
- 3, and the third will get 4. Which means the resulting
- GIF file will be made up 22% from the first picture, 33%
- from the second, 44% from the third.
- This can be used with /t (trail) as well as /a (average).
- The increment number can be negative... if you want
- the first picture to stand out more than the others.
- The default for the initial weight is 1. The default
- for the increment is 0. If you use /e without specifying
- an increment, then the increment is set to 1.
- If you don't specify either number, then both numbers are
- set to 1.
- o Fixed a bug in averaging GIF files.
- o When creating a new TGA file, DTA forgot to use the resolution
- of the input file like it does with GIF files. Fixed.
- o Can now ignore comments in TGA files properly.
- o When creating GIF files, DTA now saves at the same
- time it performs the mapping step, instead of saving to
- a buffer and saving it at the end.
- For pictures that would require virtual memory (bigger
- than 320x200), this'll save some time.
- o Added 640x400 resolution for low-end SVGA.
-
- Rel 1.5f (12/13/91)
- o DTA can now read IMG files created by the Stephen Coy's
- Vivid raytracer.
- o Speeded up some input functions that were slowed down
- because of some recently added features.
- o Another probably unsuccessful attempt to fix the same bug
- that 1.5d was supposed to fix.
- o Fixed a bug in dithering (sometimes DTA wouldn't dither
- the whole picture).
- o DTA wasn't deleting a temporary file that it sometimes
- creates. Now it does.
-
- Rel 1.5e (11/24/91)
- o DTA can now read GIF files as well as TGAs. GIF87 only,
- no interlacing allowed.
- o Added a /V (verbose) command line option. If you
- specify this, DTA will tell you exactly how many
- bytes each frame in an animation take up.
- o Added the /W option, which forces DTA to use the
- SVGA-type compression method, even if generating
- a 320x200 .FLI.
- o By the way the fix in 1.5d didn't help. However, the
- problem is pretty rare. Maybe next time.
- Rel 1.5d (11/18/91)
- o Hopefully fixed a bug that caused problems with Trilobyte's
- PLAY program.
- Rel 1.5c (11/11/91)
- o Attempting to support 800x600, 1024x768, and 1280x1024
- SVGA resolutions. Note: This is completely untested.
- I haven't the foggiest idea if it works or not.
- Rel 1.5b (11/09/91)
- o Added "expansion" feature, which inserts averaged frames
- between regular frames.
- o Fixed some bugs in some weird combinations of 3d, "pingpong",
- and "trail".
-
- Rel 1.5 (11/05/91)
- o Ordered dithering
- o VGA "mode x" .FLI resolutions
- o fixed a bug in 320x200 delta encoding
- which would sometimes cause animations to crash
- o "averaging" and "trailing" (where individual frames are
- created by averaging the colors across multiple input
- files). The difference between "averaging" and "trailing" is:
- If you run an "average" of 2 on 10 .TGAs, frame 1 will be
- an average of files 1 and 2, frame 2 an average of files 3
- and 4, and so on.
- If you do a "trail" of 2 on 10 .TGAs,
- then frame 1 will be an average of 1 and 2, frame 2 an average
- of files 2 and 3, frame 3 an average of files 3 and 4, and
- so on.
- o Red/blue-type 3d
- o TGA output (pretty useless unless you're also averaging
- input files or creating 3d images). DTA does not compress
- TGAs just yet.
- o Removed .PCX output option.
-
- Rel 1.4 TEST 2 (10/12/91)
- o DTA can now read compressed .TGAs.
- o DTA can new create .GIFs or .PCXs.
- o Before 1.4, DTA would give up on compressing a frame if the
- compressed version required more than about 64K to store.
- This was fine for 320x200 animations, where an uncompressed
- frame only requires 64K anyway, but it left something to
- be desired for 640x480 animations, where an uncompressed
- frame takes up about 300K.
- Now, 640x480 frames will be compressed unless the compressed
- version takes up more than about 300K.
- Rel 1.3c (09/14/31) (second bug fix)
- o .MAP files were missing carriage returns between
- lines.
- Rel 1.3b (09/13/31) (bugfix release)
- o Fixed bugs from the disastrous Rel. 1.3
- (including 640x480 .FLIs)
- o Big speed increase in palette creation
-
- Rel 1.3 (09/03/91)
- o 640x480 .FLIs
- o Better .FLI compression.
- o In pre-1.3, the animation was stored in a temporary file,
- then at the end a new file was created with the .FLI header,
- and then the temporary file was copied onto the end of that.
- Now, only one file is used to store the animation, and the
- header gets modified at the end of the process.
- o Frame #1 is now stored in a temporary file so that it doesn't
- need to be recreated for the "ring frame".
- o Added /G32 option for creating 32-level grayscale animations
- for laptops.
- o Fixed some bugs.
-
- Rel 1.2 (08/06/91)
- o Added support for exit codes returned by LHA 2.13...
- If LHA returns a non-zero exit code, DTA will abort.
- o If you hit the escape key while DTA is running,
- DTA will abort as soon as it's done processing
- an input file.
- o Changed the way input files are sorted.
- o Added /p (pingpong) option. (makes animation go in
- 0-1-2-3-4-3-2-1-0 order instead of 0-1-2-3-4-0).
- o Added support for lists of files to process.
- Tell DTA that a file is a list by preceding the filename
- by an "@" character. A list file may contain
- the names of .TGA files or .LZH files. You can't put
- the name of another list file in a list file.
- o Will now clip .TGA files with a resolution greater than
- 320x200 instead of choking on them.
- o Added /O (sort order) option. When DTA has to sort filenames,
- like when you use a wildcards or when you just give the name
- of an .LZH file, "/O+" (the default) will tell DTA to sort
- in ascending order, "/O-" in descending order.
- This option is positional... it will only affect files
- specified AFTER the option on the DTA command line.
- You can use this more than once on a DTA command line.
-
- Rel 1.1 (07/15/91)
- o Can now extract .TGA files from inside of .LZH files.
- (by shelling to LHA.EXE) Takes longer, but can save plenty
- of disk space.
- o Added /s (to specify playing speed).
- o Doesn't choke on truncated .TGA files any more.
- o Rewrote some I/O routines so scanning palettes is quicker.
-